package com.suge.order.dao;

import java.util.List;
import java.util.Map;

import com.suge.common.query.order.SmsOrderQueryDO;
import com.suge.order.dao.dataobject.SmsOrderDO;

/**
 * ORDER DAO INTERFACE
 * @author hengheng
 *
 */
public interface SmsOrderDAO {


	public List<SmsOrderDO> getSmsOrderByQuery(SmsOrderQueryDO smsOrderQueryDO);
	
	
	/**
	 * 
	 * @param orderId
	 * @return
	 */
	public SmsOrderDO getSmsOrderByOrderId(long orderId);
	
	/**
	 * 
	 * @param orderId
	 * @return
	 */
	public SmsOrderDO getSmsOrderByOuterOrderId(String outOrderId);
	
	/**
	 * 
	 * @param userId
	 * @return
	 */
	public List<SmsOrderDO> getSmsOrderListByUserId(long userId);
	
	/**
	 * 
	 * @param userId
	 * @return
	 */
	public List<SmsOrderDO> getSmsOrderListByDateAndUser(Map params);
	
	/**
	 * 
	 * @param userNick
	 * @return
	 */
	public List<SmsOrderDO> getSmsOrderListByUserNick(String userNick);
	
	/**
	 * 
	 * @param smsOrderDO
	 * @return
	 */
	public  boolean  updateSmsOrderStatus(SmsOrderDO smsOrderDO);
	
	/**
	 * 
	 * @param smsOrderDO
	 * @return
	 */
	public  boolean  updateSmsOrderInfo(SmsOrderDO smsOrderDO);
	
	/**
	 * 
	 * @param smsOrderDO
	 * @return
	 */
	public  SmsOrderDO  insertSmsOrder(SmsOrderDO smsOrderDO);
	
	/**
	 * 
	 * @return
	 */
	public List<SmsOrderDO> getSmsOrderNeed2Send();
}
